using Microsoft.Practices.ServiceLocation;
using NUnit.Framework;
using SIP.PN.DAO.Interfaces;
using SIP.PN.Filtros.Interfaces;
using SIP.PN.Servicios.Interfaces;

namespace SIP.PN.TestDeIntegracion
{
    [TestFixture]
    public class ServiciosTestFixture : TestBase
    {
        [Test]
        public void DaoTest()
        {
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IDaoConcepto>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IDaoEspecialidad>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IDaoNivelEspecialidad>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IDaoOperario>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IDaoProyecto>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IDaoProyectoEstado>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IDaoProyectoTareaAbstracta>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IDaoProyectoTareaEstado>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IDaoTaller>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IDaoTarea>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IDaoTipoDeDocumento>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IDaoTipoDeProyecto>());
        }

        [Test]
        public void FiltroTest()
        {
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IFiltroEspecialidad>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IFiltroNivelEspecialidad>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IFiltroOperario>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IFiltroProyecto>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IFiltroProyectoEstado>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IFiltroProyectoTareaAbstracta>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IFiltroProyectoTareaEstado>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IFiltroTaller>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IFiltroTarea>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IFiltroTipoDeDocumento>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IFiltroTipoDeProyecto>());
        }

        [Test]
        public void ServicioTest()
        {
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IServicioAplicacion>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IServicioOperario>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IServicioProyecto>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IServicioSeguridad>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IServicioTarea>());
            Assert.IsNotNull(ServiceLocator.Current.GetInstance<IServicioTipoDeProyecto>());
        }
    }
}
